Skip to content

[FSSDK-11649] Fix FSC failed tests for CMAB #411

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 18 commits into from
Jul 23, 2025

Conversation

Mat001
Copy link
Contributor

@Mat001 Mat001 commented Jun 27, 2025

The issue in the CMAB error handling path within the GetDecision method. When the CMAB API returns an error, the previous implementation attempted to append reasons from the failed API call to the accumulated reasons list. This caused FSC tests to fail because:

  • The reasons weren't properly propagated to downstream consumers
  • When API errors occurred, the Decision object contained incorrect or missing information
  • FSC tests expected specific error reasons to be present in the Decision object
    Fix
    Modified the error handling path to return a clean Decision object with properly initialized reasons

https://jira.sso.episerver.net/browse/FSSDK-11649

@Mat001 Mat001 self-assigned this Jun 27, 2025
@Mat001 Mat001 changed the title [FSSDK-11649] Fix CMAB error handling to properly propagate error reasons in Decisi… [FSSDK-11649] Fix FSC failed tests for CMAB Jun 27, 2025
@Mat001 Mat001 requested a review from raju-opti July 15, 2025 23:42
@Mat001 Mat001 requested a review from raju-opti July 22, 2025 23:08
@Mat001 Mat001 requested a review from raju-opti July 23, 2025 17:44
@Mat001 Mat001 merged commit 69a0d5a into master Jul 23, 2025
19 of 20 checks passed
@Mat001 Mat001 deleted the mpirnovar-fsc-failures-fix-fssdk-11649 branch July 23, 2025 19:52
Mat001 added a commit that referenced this pull request Jul 23, 2025
* Fix CMAB error handling to properly propagate error reasons in Decision objects

* add cmab cache options to getAllOptions

* fix failing fsc tests

* add cmab errors file

* adjust lowercase

* add test

* fix error message propagation in resons

* add error handling to feature experiment servvice

* Add more error handling to feature exper and composite feature service

* nil back to err

* add reasons message to composite feature service GetDecision

* use AddError for reasons

* Trigger PR check

* remove implicit error handling - PR feedback

* use nil instead of err for legacy

* fix error format

* Fix lint issue with fsc error

* Rename error var, lint stuttering issue
Mat001 added a commit that referenced this pull request Aug 11, 2025
* Fix CMAB error handling to properly propagate error reasons in Decision objects

* add go-sdk logic to support agent for cmab

* cleanup debug statements

* add cmab cache options to getAllOptions

* fix failing fsc tests

* add cmab errors file

* adjust lowercase

* add test

* fix error message propagation in resons

* add error handling to feature experiment servvice

* Add more error handling to feature exper and composite feature service

* nil back to err

* add reasons message to composite feature service GetDecision

* use AddError for reasons

* Trigger PR check

* fix cyclomatic complexity by refactoring client.go code

* fix lint error

* fix lint

* Trigger PR check

* remove implicit error handling - PR feedback

* [FSSDK-11649] Fix FSC failed tests for CMAB (#411)

* Fix CMAB error handling to properly propagate error reasons in Decision objects

* add cmab cache options to getAllOptions

* fix failing fsc tests

* add cmab errors file

* adjust lowercase

* add test

* fix error message propagation in resons

* add error handling to feature experiment servvice

* Add more error handling to feature exper and composite feature service

* nil back to err

* add reasons message to composite feature service GetDecision

* use AddError for reasons

* Trigger PR check

* remove implicit error handling - PR feedback

* use nil instead of err for legacy

* fix error format

* Fix lint issue with fsc error

* Rename error var, lint stuttering issue

* add go-sdk logic to support agent for cmab

* fix failing fsc tests

* adjust lowercase

* fix error message propagation in resons

* add error handling to feature experiment servvice

* Add more error handling to feature exper and composite feature service

* Trigger PR check

* fix cyclomatic complexity by refactoring client.go code

* Trigger PR check

* remove implicit error handling - PR feedback

* Update license year

* Force GitHub refresh

* change nill to err in feat exper service

* fix tests

* add two tests

* Force GitHub refresh

* Add tests to address coveralls

* add couple more tests

* few more tests

* add test for TrGetCmabDecision

* fix formatting

* add optional CmabUUID field to OptimizelyDecision for CMAB support

* simplify cmab agent support in go-sdk

* Add CMAB config struct and constants

* fix tests

* cleanup

* format

* add tests for coveralls

* add new etst and format

* Add CMAB support with config merging and remove CmabUUID from public API

* fix low test coverage

* fix PR comments

* additional fixes to pr comments

* Fix whitespace in experiment_bucketer_service_test.go to match master

- Restore correct space indentation to match master branch
- Addresses coworker comment: 'can we keep this file unchanged?'

* update pred endpoint back to preduction, remove inte
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants